package cn.lingyangwl.agile.system.assembly;

import cn.lingyangwl.agile.system.config.TenantProperties;
import cn.lingyangwl.agile.system.model.entity.SysTenant;
import cn.lingyangwl.agile.system.model.entity.SysTenantPackage;
import cn.lingyangwl.agile.system.model.rqrs.tenant.*;
import org.mapstruct.Mapper;

/**
 * @author shenguangyang
 */
@Mapper(componentModel = "spring")
public interface SysTenantAssembly {
    SysTenant toTenant(TenantSaveReq source);

    TenantResp toTenantResp(SysTenant source);

    SysTenant toTenant(TenantUpdateReq source);

    TenantPackageResp toTenantPackageResp(SysTenantPackage source);

    SysTenantPackage toTenantPackage(TenantPackageSaveReq source);

    SysTenantPackage toTenantPackage(TenantPackageUpdateReq source);

    TenantConfigResp toTenantConfigResp(TenantProperties source);

    SysTenant toTenant(TenantOwnerUpdateReq source);
}
